home *** CD-ROM | disk | FTP | other *** search
/ Amiga CD-Sensation: Golden Games / Amiga CD-Sensation - Ausgabe 2 - Golden Games (1996)(GTI - Schatztruhe)(DE)[!].iso / Brain Activity / XConq / CHANGES < prev    next >
Text File  |  1995-03-06  |  18KB  |  510 lines

  1. Complete List of Changes From 5.1
  2.  
  3. (Note: this change list is cobbled together from various sources, and only
  4. lightly edited.)
  5.  
  6. *** 5.5
  7.  
  8. Updated README
  9.  
  10. Moved all system-dependent defines from config.h to the Imakefile.
  11. By virtue of the Imakefile, pcf font support was added as well as
  12. several install & clean definitions.
  13.  
  14. Created an Imakefile.
  15.  
  16. * b4
  17.  
  18. Added marginal support for HPUX.  Including a user-written version of
  19. strcasecmp.
  20.  
  21. Changed occurrences of #endif WORD to #endif /* WORD */ to shut up
  22. some wimpy preprocessors.
  23.  
  24. Disabled the stack trace facility since the developer has a real
  25. debugger and the signal interceptor prevents the core from recording
  26. useful information.
  27.  
  28. Fixed the OpenWindows input focus problem (ICCCM non-compliance on our
  29. part).
  30.  
  31. Enabled the game to support more than 7 players.
  32.  
  33. Added letters to the terrain font so that players above 9 would have
  34. unique identifiers.
  35.  
  36. Added a little error checking to the resignation command.
  37.  
  38. Added a world-map magnification option.
  39.  
  40. Added the ability to add a player in the middle of the game.  Very
  41. limited, and kinda screwy still.
  42.  
  43. Improved the internal geometry manager to handle periods with lots of
  44. units a little better.
  45.  
  46. Since having 20 allied robots results in a lot of view updating, robot
  47. alliances are now in blocks of 5-9 countries.  This will make it a
  48. little easier for humans since robots can now fight each other.
  49.  
  50. fixed the do_look command so that it's not shadowed by the do_fill
  51. command.
  52.  
  53. Added a little error checking to the map loader so that 0-length files
  54. wouldn't crash it.
  55.  
  56. Expanded unit ids to ints.  This may cause problems since I can't
  57. guarantee I've found all the code that will be affected.
  58.  
  59. Nailed a couple of bizzare conditions that CodeCenter found in the
  60. machine player.
  61.  
  62. Bulletproofed the wake_unit code when passed an other==NULL.
  63.  
  64. Did a little tapdance to prevent the "builder has moved" message when
  65. garrisoning.  Also fixed the "nonmover has moved" message during
  66. garrisoning.  Also don't print message when garrison operation doesn't
  67. destroy anything.
  68.  
  69. Improved the resource distribution system.  It seems to work well with
  70. the standard period and 4tech.  Will it work with other periods as
  71. well?
  72.  
  73. Tried to define the direction field in sergeant.c as a signed char,
  74. ran into a few problems with Sun's sucky compiler.
  75.  
  76. Fixed bug where captured units regained full movement.  They now
  77. merely hang onto whatever movement they had if the capturemoves
  78. periodflag is enabled.
  79.  
  80. Added a few things to the manual page.  Documented the resources.
  81.  
  82. * b3
  83.  
  84. Better messages when searching for app-defaults and .Xdefaults.
  85.  
  86. area-radius reimplemented finally.
  87.  
  88. fixed problem in do_embark() caused by transport variable not being
  89. initialized.
  90.  
  91. Made the help window behave better when handed unimplemented keystrokes.
  92.  
  93. Made saved game restore more robust and verbose in the face of errors.
  94.  
  95. Fixed version mismatch error message.
  96.  
  97. Removed wander_to() from movement routine until we can decide what the
  98. movement routine's behaviour should be.
  99.  
  100. Fixed cost estimation routine in sergeant.c that was broken in the
  101. shift from b1 to b2.
  102.  
  103. Allowed units to consume their last fuel with a mouse click movement.
  104.  
  105. Fixed problem where a maker intended to garrison its occupant would have
  106. both itself and that occupant destroyed before the occupant got placed
  107. correctly.
  108.  
  109. *b2
  110.  
  111. Added period.leavemap and period.repairscale to per2c output.
  112.  
  113. Fixed inconsistency in handling of repair for different repair rates
  114. and scales.
  115.  
  116. Fixed curses display of neutral units to show a quote instead of "7".
  117.  
  118. Hacked period reader so that a non-zero extension in the header means
  119. to not clear the period before reading (makes period inclusion more
  120. useful :-) ).
  121.  
  122. Units not waiting to fill up will not be woken up when they become full.
  123.  
  124. Added terrain name information to the info window.
  125.  
  126. Fixed units changing sides so that you can't capture or give away
  127. units that don't change side.  Also fixed it so that allied units
  128. couldn't be given away by an ally.
  129.  
  130. Added X app-defaults handling (I think).
  131.  
  132. Added an icon hint to the main window, made the help window part of
  133. main's windowgroup.
  134.  
  135. Improved X resource handling some: added ability to set the showmode
  136. through resources.
  137.  
  138. Improved X resize and expose handling (the latter was a VERY dramatic
  139. improvement).
  140.  
  141. Fixed problems with the worldmap viewport box not being drawn
  142. correctly.
  143.  
  144. Added better event handling so that the help window could stay up
  145. while the game was being played.  Also bound a few more keys in the
  146. help window.
  147.  
  148. Added the move-toward-unit command, accessible with the ^M key (move
  149. toward marked unit with confirmation) or <Shift><Mouse>.  The
  150. possibility of binding different things to different mouse keys and
  151. different modifiers does not escape me.
  152.  
  153. Added the ability to select the next unit to move in survey.
  154.  
  155. Added automatic delay of off-screen units so that the action does not
  156. skip around as much (fewer viewport changes).
  157.  
  158. Nailed a SEGV in maybe_wakeup.
  159.  
  160. Added a parser keyword for the leave-map period variable.
  161.  
  162. Added a new keyword repair-scale that sets how many hps are repaired
  163. each turn (assuming the chance succeeds).  The repair system needs to
  164. be revamped in 6.0.
  165.  
  166. Fixed the border condition in handling of crippled units.
  167.  
  168. Added -d[display] to specify a display for the first (default) player.
  169.  
  170. Changed xconq library dir to be settable from an env variable XCONQLIB.
  171.  
  172. Stopped incessant scrolling when a unit is on the top edge.
  173.  
  174. Changed config details to be defined by specific features, rather than
  175. by "BSD", "SYSV", etc (which never works right, Un*x systems are too
  176. mixed up these days).
  177.  
  178. Made low-supply units not wake up if they are already on their way to a
  179. transport (doesn't check refueling ability though).
  180.  
  181. Simplified X11 font opening to follow the standard.
  182.  
  183. Flushed recognition of .b11 extension for X bitmap files, now only .b allowed.
  184. Converted all bitmaps to usual X11 arrangement (array of bytes, not words).
  185.  
  186. Made color allocation more forgiving of slight mismatches in rgb values.
  187.  
  188. Enabled clicking on world map to generate map positions just like map display.
  189. (!!)
  190.  
  191. Added ability to resize window by dragging the corner (subwindows anyway,
  192. main window a problem).
  193.  
  194. Changed period reader to only warn rather than error out if undefined words
  195. are seen.  The stack is emptied out also.
  196.  
  197. Changed movement algorithm to take a least-cost path that wouldn't run
  198. the unit out of resources.  This was a superior rewrite of the 5.3
  199. capabilities.
  200.  
  201.   Fixed the coast following routines, the new ones are also superior
  202. to 5.3 and handle map wrap.  I had to create a new order-arg type for
  203. this.
  204.  
  205.   Modified follow leader to handle map wrap and use the new movement
  206. algorithm.
  207.  
  208.   Created a Fill command that would sleep the transport until it was
  209. full.  This got hooked into occupy_unit, just like embark.
  210.  
  211.   Created a Move To Transport command that would send the unit to any
  212. nearest transport with orders to Fill.
  213.  
  214.   Changed the Return command into an actual order that would search
  215. for the nearest possible transport.  The old Return code was actually
  216. implemented as a moveto, which didn't work too well when the
  217. destination moved.
  218.  
  219.   Added the ability to delete standing orders.
  220.  
  221.   Added the ability to set certain colors using the ResourceManager.
  222. No app-defaults parsing yet, but the .Xdefaults is supported as a
  223. fallback.
  224.  
  225.   Added rudimentary error handling upon failure to open a display.
  226.  
  227.   Handled interupted select system calls (handy when debugging).
  228.  
  229.   Did a teency bit of abstraction in the direction macros.
  230.  
  231.   Added some abstraction on the three delayed orders commands (Sentry,
  232. Embark and Fill).  Kudos to Greg for thinking that stuff up.
  233.  
  234.   Rearranged a few keys to be more mnemonic and similar to 5.3 (at
  235. least I think they're mnemonic).
  236.  
  237.   Added a Move To Unit command, but didn't bind it anywhere, so why
  238. mention it?  Maybe someone can suggest a good keybinding.
  239.  
  240.   Revamped copy_orders to use bcopy instead of the icky switch
  241. statment.  This should work until the Order structure gets some
  242. pointers.
  243.  
  244.   Fixed the code so that units with see-range 0 wouldn't cause a
  245. floating exception.
  246.  
  247.   Fixed the path generation so that absolute paths could be given for
  248. period files.
  249.  
  250. *** 5.4
  251.  
  252. Below are a list of changes to xconq that are noticeable to a user
  253. directly.  In addition, a number of bug fixes have been made which are
  254. only noticeable in that the program fails to crash as often.   The
  255. machine players have also been modified in a number of ways, which
  256. tends to improve their play.  
  257.  
  258. Playing changes 
  259. ---------------
  260.  
  261. Center is changed so that no units can be forgotten because of your,
  262. or another player doing a center command.
  263.  
  264. Units wake up if an enemy appears next to them.  The wakeup is
  265. immediate.  They also remember why they were woken up even if the unit
  266. waking them has gone away.
  267.  
  268. Changed name display so that only first part of host name displayed.
  269.  
  270. Provided a second font for the help window.  The default will be small
  271. enough that the whole standard help window will fit on the screen. 
  272.  
  273. Print a message at the start of each turn.  Beep if active units are
  274. in play and time > start beep time has elapsed since the players last
  275. turn.  This can be set with the option command.
  276.  
  277. Fix display routine so that it does not make pieces disappear on small
  278. screens.
  279.  
  280. Added clock to tell amount of time taken by each player.  It displays
  281. if countdown clocks are not in use.  Theses counts as well as the
  282. chess clock values are saved to the savefile.
  283.  
  284. Added messages for segmentation faults and bus errors localizing the
  285. errors.   This has expanded to a complete stack trace of some subset
  286. of the procedures called.
  287.  
  288. Fixed standing orders so that they can be created and saved without
  289. crashing the program.
  290.  
  291. The supply allocation has been changed so that units will not dump all
  292. of their supplies to a base.  It should now try to do reasonable
  293. things for trying to make sure everyone has at least some supplies.
  294.  
  295. Changed the save files so that saved games restart exactly where the
  296. game was left, rather than at the beginning of the next turn.  This
  297. avoids any the loss of moves for units which come after the one active
  298. when the game was saved.  The order of the units is changed, since the
  299. restore routine needs the units to be sorted.
  300.  
  301. Added a recenter command, installed under '.'.  This command places
  302. the current hex in the middle of the display.
  303.  
  304. Added follow action mode, installed as a toggle command on ^F.  In
  305. follow action mode, any changes to your view are shown to you.  If the
  306. current display does not have the changed location, it will be put in
  307. the center of the display.
  308.  
  309. Changed viewing routine so that previously unseen hexes with invisible
  310. units in them appear as empty rather than as unseen.
  311.  
  312. Changed unit allocation and garbage collection so that the number of
  313. units can grow past the initial limit.
  314.  
  315. Added an optional argument to the redraw command so that it will erase
  316. any views older than the argument.  This is particularly useful after
  317. a briefing.  Only non-moving units views will be erased.  ^R defaults
  318. to erasing the views of moving units we haven't seen in 10 turns.  ^L
  319. defaults to never erasing views unless an explicit argument is given.
  320.  
  321. Changed briefings so that all old views of the side doing the briefing
  322. are erased first.  (ie., briefings say where units are not as well as
  323. where they are.)
  324.  
  325. Implemented a cheat mode under -C.  This just lets the machine see
  326. everything. 
  327.  
  328. Captured units cancel all standing orders.
  329.  
  330. Made wakeup 'w' wake up the unit being surveyed as well as the top
  331. unit.
  332.  
  333. All moves or attacks use at least one point of movement.  This prevents
  334. units who are in a transport on terrain they can not move on (movement
  335. value is -1 for these places) from having an infinite number of
  336. attacks.  This also means that units entering a base will not gain an
  337. extra point of movement.
  338.  
  339. # command has been added.  This prints the distance between the
  340. current location and another point.
  341.  
  342. T and ^T commands have been added to find units.  These commands are
  343. identical, except that T prompts for a unit type, while ^T uses the
  344. type of the current unit.  These commands find a unit of the given
  345. type.  ^T repeated will give the next unit of the given type.  This
  346. allows a player to look at all of the units of some type.  Useful when
  347. some units are in transports (and possibly out of supplies).  An
  348. argument to either command looks for the unit with that number.
  349.  
  350. Changing product to the current product no longer resets the schedule.
  351.  
  352. Write in savefile views using run length encoding.
  353.  
  354. Occupants are sorted in decreasing order of their speed.
  355.  
  356. Fixed survey mode for no-movers so that they can look at units that
  357. are occupants of other units.
  358.  
  359. Added machine control of selected units (^A).  The machine will make
  360. all decisions until the unit is woken by the users.  Standing orders
  361. to use automatic control are added to rather than replacing previous
  362. standing orders.  This allows the user to give standing orders to move
  363. to some location and then let the machine take over.
  364.  
  365. Embark (e) has been changed so that is will take an argument.  The
  366. unit will wait around that many turns trying to embark on some
  367. transport before waking up.  This command can be given as a standing
  368. order, allowing much more complete automation of the movement of
  369. units. 
  370.  
  371. Provided an escape from robot mode.  Typing escape while a robot in a
  372. multiplayer game will change a robot into a human.  This will work
  373. either during a human player turn, or at the end of the turn if there
  374. are no human players in the game.
  375.  
  376. Expanded the help pages so that the commands don't go off the bottom
  377. of the page.
  378.  
  379. Added find dead unit (^D) which cycles through units that died in the
  380. last turn.
  381.  
  382. Prevented the automatic return to move mode when the current unit is
  383. given an order.
  384.  
  385. Added scrolling to the notice buffer.  Click on the top or bottom to
  386. scroll the messages.
  387.  
  388. --
  389.  
  390. Units on sentry can be woken up any time during the turn.  Thus, a
  391. unit on sentry duty does not lose its move by doing sentry.  It just
  392. prevents the player from being prompted about the unit unless it is
  393. woken up.
  394.  
  395. A next product command has been added (as control-p).  This determines
  396. what a unit will produce after it finishes producing its current unit.
  397.  
  398. The side name is set by reading the resource xconq.SideName at
  399. startup.  If this is not set, a random name is chosen.
  400.  
  401. Period options added 
  402. --------------------
  403.  
  404. Provided a flag to prohibit production by occupants who are not also
  405. makers.  The default is that only makers can produce inside of other
  406. units.
  407.  
  408. Provided a flag to indicate whether or not captured units can
  409. immediately be moved.  Thus, all units will behave the same when
  410. captured, regardless of the ordering of the new and former owners in
  411. the turn sequence. 
  412.  
  413. Provided a flag to allow occupants to not consume supplies.  Useful
  414. for planes on the ground.
  415.  
  416. Standard period changes.
  417. -----------------------
  418.  
  419. (Troop transports have 3 hp.)
  420.  
  421. (Submarines have only 2 ph.)
  422.  
  423. Infantry and armor defend the cities and bases they are in.  
  424.  
  425. Aircraft carriers can hold 400 fuel instead of 200.
  426.  
  427. The out-length of all units that are not transports have been set to
  428. -1, prohibiting them from giving up their fuel at bases except by
  429. order from a player.
  430.  
  431. Gave capital cities a viewing range of 3 hexes instead of the one for
  432. all other units.
  433.  
  434. Aircraft do not consume supplies while on the ground.
  435.  
  436. Changed the out-length of all units other than fighters and infantry
  437. to 0.  This allows them to transfer fuel automatically.
  438.  
  439. The enter-time of ships has been set to 0, correcting for the loss of
  440. movement incurred when minimum movement of 1 point was incurred.
  441. Ships are allowed to enter and leave bases with no cost to movement.
  442.  
  443. Bases repair units at a rate of one point every three turns.  Infantry
  444. repair bases at one point per turn and towns or cities at one point
  445. per ten turns.
  446.  
  447. *** 5.3ufl:
  448.  
  449.     all following changes by <thoth@manatee.cis.ufl.edu>
  450.  
  451. - added new "j" command to jump unit A out of transport B into
  452.     transport C (which contains B).
  453.  
  454. - added new "t" command to throw a unit out the back of a transport.
  455.     This is not heavily tested.
  456.  
  457. - let "od" take arguments ("3od" is my favorite display format).
  458.  
  459. - expanded map capabilities to handle 254 unit types and 255 sides
  460.     (should have this code #ifdefed).
  461.  
  462. - changed supply line algorithms to limit flow.
  463.  
  464. - implemented arearadius.
  465.  
  466. - fixed periods and changed some colors.
  467.  
  468. - fixed bugs with hidden unit display (still tracking down some).
  469.  
  470. - fixed bug that allowed units to move without cost when clicking in
  471.     unknown territory that was incompatible with the unit type
  472.     (the sail-across-ocean bug).
  473.  
  474.  outstanding BUGS:
  475. - looking for old "orders" bug that causes SEGVs for restored games.
  476.  
  477.  new BUGS:
  478. - monochrome seems to be busted, this is not a priority (unfortunately).
  479.  
  480. *** 5.3:
  481.  
  482. - Removed menu of maps and scenarios.
  483.  
  484. - Removed bar graph display of unit hit points, fuel and ammo.
  485.  
  486. - New view encoding allows up to 15 sides to play.
  487.  
  488. - Units are stored in a circular doubly-linked list.
  489.  
  490. - New routine for sorting units in order of geographic proximity.
  491.  
  492. - The format of save files and map files is incompatible with xconq 5.1
  493.  
  494. - Units will try to automatically move around obstables in order to reach
  495.   their destination.
  496.  
  497. - New coast following routine
  498.  
  499. - New unit orders:
  500.     a - move to and attack the nearest enemy unit
  501.     e - sleep until a transport is adjacent and then board it
  502.     E - move to the nearest transport and board it
  503.     F - put a transport to sleep until it is full
  504.  
  505. - Allied sides update each others views at the end of every turn.
  506.  
  507. *** 5.2
  508.  
  509. (There was never a 5.2, that I know of anyway.)
  510.